import 'dart:async';
import 'package:bloc/bloc.dart';


/*

    没什么作用，无法继承；

    登录的时候，发现的一个问题；
    登录出错后，toast一个消息。然后点击，服务器配置按钮。
    发现，toast 又出现了一次。
    关闭，服务器配置页面后，toast又出现了一次；

    好像是当页面跳转和返回的时候，最后一次state，一直在刷新；

    所以，在登录出错后，发送了一个空的事件 NullEvent ,接受一个NullState;
    什么事情都不做。
 *
 *
 *
 *
 */
abstract class BaseState {}

class InitialBaseState extends BaseState {}

class NullState extends BaseState {

}

abstract class BaseEvent {}
class NullEvent extends BaseEvent {

}

class BaseBloc extends Bloc<BaseEvent, BaseState> {
  @override
  BaseState get initialState => InitialBaseState();

  @override
  Stream<BaseState> mapEventToState(
    BaseEvent event,
  ) async* {
    //空状态。用于，避免刷新 ；
    if  (event is NullEvent) {
      yield NullState();
    }
  }
}
